$(function () {

  currentPage = 1;
  pageSize = 5;

  // 空数组存图片
  picArr = [];
  // 记录当前操作状态
  var currentId = null;
  var isDelete = null;

  // 1-获取数据渲染页面
  function render() {
    $.ajax({
      url: '/product/queryProductDetailList',
      data: {
        page: currentPage,
        pageSize: pageSize
      },
      dataType: 'json',
      success: function (info) {
        // console.log(info);
        $('tbody').html(template('tmp', info));
        setPage(info.total)
      }
    })
  }
  render();

  // 2-分页
  function setPage(total) {
    $("#pagintor").bootstrapPaginator({
      bootstrapMajorVersion: 3,//默认是2，如果是bootstrap3版本，这个参数必填
      currentPage: currentPage,//当前页
      totalPages: Math.ceil(total / pageSize),//总页数
      onPageClicked: function (event, originalEvent, type, page) {
        //为按钮绑定点击事件 page:当前点击的按钮值

        currentPage = page;
        render();
      }
    });
  }

  // 3-操作上架下架
  $('tbody').on('click', '.button', function () {

    currentId = $(this).parent().data('id');
    isDelete = $(this).hasClass('btn-success') ? 1 : 0;
    // console.log(isDelete);  
  })


  // 4-获取二级分类
  $.ajax({
    url: '/category/querySecondCategoryPaging',
    data: {
      page: 1,
      pageSize: 99
    },
    dataType: 'json',
    success: function (info) {
      // console.log(info);
      $('.cate-list').html(template('tmp-cate', info));
    }
  })

  // 5-点击二级菜单填充
  $('.cate-list').on('click', 'a', function () {
    // 赋值给按钮
    $('.title-text').text($(this).text());
    // 隐藏域id
    $('[name="brandId=="]').val($(this).data('id'));
    $("#form1").data('bootstrapValidator').updateStatus('brandId','VALID')
  })

  // 6-上传商品图片
  $("#file").fileupload({
    dataType: "json",
    //e：事件对象
    //data：图片上传后的对象，通过data.result.picAddr可以获取上传后的图片地址
    done: function (e, data) {
      // console.log(data.result);
      // 把图片添加到数组
      picArr.unshift(data.result);
      // console.log(picArr.unshift(data.result));
      $('.pic-box').prepend('<img src="' + data.result.picAddr + '" height="100px">')
      if (picArr.length > 3) {
        // 删除最后一个子元素
        picArr.pop()
        // 删除最后一张图片
        $('.pic-box img:last-child').remove();
      }
          if(picArr.length == 3) {
  
            $("#form1").data('bootstrapValidator').updateStatus('picStatus','VALID')

      }
    }
  });


  // 7-表单验证
  //使用表单校验插件
  $('#form1').bootstrapValidator({

        //1. 指定不校验的类型，默认为[':disabled', ':hidden', ':not(:visible)'],可以不设置
        excluded: [],

        //2. 指定校验时的图标显示，默认是bootstrap风格
        feedbackIcons: {
            valid: 'glyphicon glyphicon-ok',
            invalid: 'glyphicon glyphicon-remove',
            validating: 'glyphicon glyphicon-refresh'
        },

        //3-字段
        fields: {
            brandId: {
                validators: {
                    notEmpty: {
                        message: '请选择二级分类！'
                    }
                }
            },
            proName: {
                validators: {
                    notEmpty: {
                        message: '请输入商品名称！'
                    }
                }
            },
            proDesc: {
                validators: {
                    notEmpty: {
                        message: '请输入商品描述！'
                    }
                }
            },
            num: {
                validators: {
                    notEmpty: {
                        message: '请输入商品库存！'
                    },
                    //正则校验
                    regexp: {
                        //要验证正则表达式
                        regexp: /^[1-9]\d*$/,
                        message: '商品库存必须是非零开头数字！'
                    }
                }
            },
            size: {
                validators: {
                    notEmpty: {
                        message: '请输入商品尺码！'
                    },
                    //正则校验
                    regexp: {
                        regexp: /^[1-9]\d{1}-[1-9]\d{1}$/,
                        message: '商品尺码必须是 xx-xx格式， x是数字'
                    }
                }
            },
            oldPrice: {
                validators: {
                    notEmpty: {
                        message: '请输入商品原价！'
                    }
                }
            },
            price: {
                validators: {
                    notEmpty: {
                        message: '请输入商品现价！'
                    }
                }
            },
            picStatus: {
                validators: {
                    notEmpty: {
                        message: '图片必须上传3张！'
                    }
                }
            }
        }
    })


   //7-表单验证通过后，向后台发送ajax请求， 添加商品数据
   $('#form1').on('success.form.bv', function (e) {
    e.preventDefault(); //阻止默认行为 

    var str = $('#form1').serialize();
    str += '&' + 'picArr=' + JSON.stringify(picArr)
    $.ajax({
      url: '/product/addProduct',
      type: 'post',
      data: str,
      dataType: 'json',
      success: function(info){
        // console.log(info);
        // 隐藏模态框
        $('.modal-add').modal('hide');
        currentPage = 1;
        render();
        // 重表单
        $('#form1').data('bootstrapValidator').resetForm(true);
        // 重置下拉列表 和图片
        $('.title-text').text('请选择二级分类');
        $('.pic-box').empty();
        picArr = [];
      }
    })
   })

})